package com.sky.entity;

import com.sky.anotion.StatusConvert;
import com.sky.anotion.ValidId;
import com.sky.anotion.validator.UpdateGroup;
import lombok.*;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDateTime;

@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Accessors(chain = true)
@EqualsAndHashCode(of = "id")
public class CompetionCategory implements  Serializable {
        @ValidId(groups = {UpdateGroup.class})
        /** 竞赛类别id */
        private String id;
        /** 竞赛类别名称 */
        private String name;
        /** 竞赛类别描述 */
        private String desc;
        /**开始时间*/
        private LocalDateTime startTime;
        /**结束时间*/
        private LocalDateTime endTime;
        /**部门id的集合*/
        private String departmentId; // 部门id的集合
        /**分类类型 0:默认 1 流程编排*/
        private Integer type;
        /**状态 0:未开始 1:进行中 2 已过期*/
        private Integer status;
    /**创建时间*/
    private LocalDateTime createTime;
    /** 创建人*/
    private String createUser;
    /** 更新时间*/
    private LocalDateTime updateTime;
    /** 更新人*/
    private String updateUser;
}
